using System;
using System.Collections.Generic;
using System.Text;

namespace BizTalkCop.Rules.Enums
{
    /// <summary>
    /// Enum listing the types of elements used in orchestraion Shape XML
    /// </summary>
    public enum ShapeType
    {
        /// <summary>
        /// Default Null value
        /// </summary>
        Null = 0,

        /// <summary>
        /// Send
        /// </summary>
		SendShape,

        /// <summary>
        /// Message Assign
        /// </summary>
        MessageAssignmentShape,
		
        /// <summary>
        /// Construct Message
        /// </summary>
        ConstructShape,		
        
        /// <summary>
        /// Receive
        /// </summary>
        ReceiveShape,

        /// <summary>
        /// Scope
        /// </summary>
        ScopeShape,

        /// <summary>
        /// Parallel
        /// </summary>
        ParallelShape,

        /// <summary>
        /// Call Orchestration
        /// </summary>
        CallShape,

        /// <summary>
        /// Start Orchestration
        /// </summary>
        ExecShape,

        /// <summary>
        /// Catch
        /// </summary>
        CatchShape,

        /// <summary>
        /// Throw
        /// </summary>
        ThrowShape,

        /// <summary>
        /// Decide
        /// </summary>
        DecisionShape,

        /// <summary>
        /// Suspend
        /// </summary>
        SuspendShape,

        /// <summary>
        /// Delay
        /// </summary>
        DelayShape,

        /// <summary>
        /// Terminate
        /// </summary>
        TerminateShape,

        /// <summary>
        /// Listen
        /// </summary>
        ListenShape,

        /// <summary>
        /// Expression 
        /// </summary>
        VariableAssignmentShape,

        /// <summary>
        /// Loop
        /// </summary>
        WhileShape,

        /// <summary>
        /// Call Rules
        /// </summary>
        CallRulesShape,

        /// <summary>
        /// Compensate
        /// </summary>
        CompensationShape,

        /// <summary>
        /// Message Transform
        /// </summary>
        TransformShape
    }
}
